popover: Hide widget first when disposing
authorCarlos Garnacho <carlosg@gnome.org>
Fri, 16 May 2014 15:38:28 +0000 (17:38 +0200)
committerCarlos Garnacho <carlosg@gnome.org>
Fri, 23 May 2014 17:54:31 +0000 (19:54 +0200)
In order to ensure invariants are kept.

gtk/gtkpopover.c

index 885b691f083e4a186a63dbd1d8680be198ff2a99..8a90868f4471e4fb883d5f2318bdf799015fce5e 100644 (file)
@@ -235,6 +235,8 @@ gtk_popover_dispose (GObject *object)
   GtkPopover *popover = GTK_POPOVER (object);
   GtkPopoverPrivate *priv = popover->priv;
 
+  gtk_widget_set_visible (GTK_WIDGET (object), FALSE);
+
   if (priv->window)
     _gtk_window_remove_popover (priv->window, GTK_WIDGET (object));
 
@@ -249,7 +251,6 @@ gtk_popover_dispose (GObject *object)
       priv->prev_focus_widget = NULL;
     }
 
-  gtk_widget_set_visible (GTK_WIDGET (object), FALSE);
   G_OBJECT_CLASS (gtk_popover_parent_class)->dispose (object);
 }